/*
*/

//下面这个hash表结构，需要参赛者自己定义。
typedef struct {

} MyHashMap;


//创建Hash表，最大元素数量是max_elem。
MyHashMap* myHashMapCreate(uint64_t max_elem) {

}

// 向hash表中添加元素，键值分别为key/value。 
// 成功返回0。 
// 如果该key在hash表中已经存在，返回-EEXIST；
// 如果hash表中元素数量超过了max_elem，则返回-ENOMEM；
int myHashMapPut(MyHashMap* obj, uint64_t key, uint64_t value) {

}

//在hash表中查找键为key的元素，并返回对应的值。 如果key不存在，则返回(uint64_t)-1。
uint64_t myHashMapGet(MyHashMap* obj, uint64_t key) {

}

//从hash表中删除键为key的元素。
//如果成功返回0 
//如果key不存在，则返回-ENOENT
int myHashMapRemove(MyHashMap* obj, uint64_t key) {

}

//销毁hash表，并释放该Hash表所有占用的内存。
void myHashMapFree(MyHashMap* obj) {

}

